package com.chixing.day18_thread;

/**
 * 多个线程修改同一个Account对象
 *
 * 为了防止出现，一个线程在修改数据 尚未提交(结束) 其他线程也同时查看或修改表对象的数据，导致数据不准确
 *
 * ====同步锁
 * 在同一时刻，最多只能有一个线程能获得到该对象锁
 * 若其他线程此时也来访问该synchronized方法，就获得不到该对象的锁
 * 【互斥锁】
 *
 * deposite()所有的线程必须依次执行
 */
public class Account {
    //1.获得到当前对象的锁 2.才能执行deposit 3,执行结束之后，释放对象锁
    public synchronized void deposite(){}

    public synchronized void withfraw(){}

    public void withfraw1(){
        synchronized (this){

        }

    }

}
